The present invention involves the field of telecommunications. More particularly, the present invention involves the use of Automatic Repeat Request (ARQ) in wireline and wireless telecommunications systems and data networks.
Automatic Repeat Request (ARQ) is a commonly used technique in telecommunications systems and data networks. It is used to ensure the reliable delivery of data packets, herein referred to as protocol data units (PDUs), from a sending entity (herein referred to as a sender) to a receiving entity (herein referred to as a receiver). In general, ARQ employs an error detection code during data transmission. The error detection code allows the receiver to determine whether a PDU was correctly received. ARQ also employs a feedback mechanism, which the receiver uses to notify the sender that a PDU was or was not correctly received. The sender may then retransmit the PDU based on the feedback provided by the receiver.
There are three main ARQ types: Stop-and-Wait, Go-Back-N, and Selective Repeat. In accordance with the Stop-and-Wait ARQ technique, a sender does not send a new PDU to the receiver until the sender receives positive acknowledgment (i.e., an ACK signal) from the receiver that the previous PDU has been successfully received. In accordance with the Go-Back-N ARQ technique, the sender may transmit one or more PDUs before it receives an ACK signal from the receiver regarding previous PDUs. If, however, the sender receives a negative acknowledgement (i.e., a NACK signal) from the receiver indicating that a previous PDU was not successfully received, the sender retransmits the missing or incorrectly received PDU, as well as all subsequent PDUs, whether or not any of the subsequent PDUs were received correctly. In accordance with the Selective Repeat ARQ technique, the receiver provides a combination of ACK and NACK signals. The sender then retransmits those PDUs which were not successfully received. The sender does not retransmit, as in the Go-Back-N ARQ technique, all subsequent PDUs. Of course, there are variations associated with each of the three main ARQ types. The present invention, however, deals with the Selective Repeat ARQ technique.
Typically, the Selective Repeat ARQ messages that convey PDU reception status, are transported from the receiver to the sender in a special PDU called a control PDU (C-PDU). The PDU reception status information being conveyed to the sender in a C-PDU should, of course, be formatted in an efficient manner, particularly with respect to bandwidth. Failure to efficiently utilize bandwidth can lead to unnecessary PDU transmission delays, which in turn, can be extremely detrimental when dealing with applications such as real-time voice and/or video, which are particularly sensitive to such delays. Accordingly, a C-PDU format that is specifically designed to convey PDU reception status information (e.g., ACK and NACK information) in a more bandwidth efficient manner is highly desirable.
The present invention deals with a bandwidth efficient C-PDU format for conveying Selective Repeat ARQ messages, particularly PDU reception status information (e.g., ACK and NACK signals), from a receiver to a sender in a wireline or wireless telecommunications system or data network. The sender can, based on the PDU status information, determine whether certain PDUs in its buffer should be released, to make room for new PDUs, or retransmitted in the event they were not successfully received. The bandwidth efficient C-PDU format of the present invention employs a number of xe2x80x9cpartial bitmapsxe2x80x9d wherein each partial bitmap defines the PDU reception status for the PDUs associated with a corresponding block of PDUs, which are currently eligible for transmission from the sender to the receiver. Moreover, each of the corresponding blocks of PDUs, for which the partial bitmaps contain PDU reception status information, are defined relative to each other. As such, fewer bits are needed to define the corresponding blocks of PDUs. In addition, the C-PDU format includes an ARQ bandwidth increase request (ABIR) bit, which is employed by the receiver to request an increase in the ARQ signaling bandwidth.
Accordingly, it is an objective of the present invention to convey ARQ messages, particular PDU reception status information, from a receiver to a sender in a wireline or wireless telecommunications system or network.
It is another objective of the present invention to convey PDU reception status information using a control PDU (i.e., a C-PDU).
It is still another objective of the present invention to provide a bandwidth efficient C-PDU format for conveying PDU reception status information.
It is yet another objective of the present invention to enhance the reliability of PDU delivery and minimize the risk of PDU transmission delays.
In a first aspect of the present invention, the above-identified and other objectives are achieved with a method for acknowledging data packet reception status, in accordance with a Selective Repeat ARQ scheme, for a sequence of data packets being transmitted from a sending node to a receiving node in a telecommunications network, wherein each data packet is assigned a sequence number indicating an order of transmission, and wherein the sequence of data packets are grouped into fixed blocks of data packets. The method involves generating a first bitmap number which identifies a first block of data packets, and generating a first bitmap which defines the reception status for the data packets associated with the first block of data packets. The method also involves generating a second bitmap number which identifies a second block of data packets relative to the first block of data packets, and generating a second bitmap which defines the reception status for the data packets associated with the second block of data packets. The first bitmap number, the first bitmap, the second bitmap number and the second bitmap are then transmitted from the receiver to the sender.
In a second aspect of the present invention, the above-identified and other objectives are achieved with a method for acknowledging protocol data unit (PDU) reception status, in accordance with a Selective Repeat ARQ scheme, wherein the PDUs are grouped into a first number of blocks of PDUs, and each PDU is assigned a sequence number indicating an order of transmission, and wherein the Selective Repeat ARQ scheme employs a transmission window that defines an interval of PDUs that are eligible for transmission from a sender to a receiver. This method involves generating a first bitmap block number, which identifies a first block of PDUs, and generating a first bitmap, which defines the reception status for the PDUs in the first block of PDUs. The method also involves generating a second bitmap block number, which identifies a second block of PDUs relative to the first block of PDUs, and generating a second bitmap, which defines the reception status for the PDUs in the second block of PDUs. Then , a control PDU is transmitted from the receiver to the sender, where the control PDU contains the first bitmap block number, the first bitmap, the second bitmap block number and the second bitmap.
In a third aspect of the present invention, the above-identified and other objectives are achieved with a method for determining reception status, in accordance with a Selective Repeat ARQ scheme, for a number of protocol data units (PDUs) that have been transmitted from a sender to a receiver, the PDUs being grouped into a first number of fixed blocks of PDUs, wherein each of the PDUs are identified by a corresponding sequence number, and wherein the Selective Repeat ARQ scheme employs a transmission window that defines an interval of PDUs that are currently eligible for transmission, the interval of PDUs being grouped into a second number of fixed blocks of PDUs, which is a subset of the first number of fixed blocks of PDUs. This method involves receiving, at the sender, a control PDU transmitted by the receiver, where the control PDU contains a first bitmap block number, a second bitmap block number, a first bitmap, and a second bitmap. A first block of PDUs is then identified from amongst the second number of fixed blocks of PDUs that are associated with the transmission window, based on the value of the first bitmap block number. Next, the reception status for the PDUs associated with the first block of PDUs is determined as a function of the first bitmap. The method then involves identifying a second block of PDUs, from amongst the second number of fixed blocks of PDUs that are associated with the transmission window, based on the value of the second bitmap block number and the value of the first bitmap block number, where the second bitmap block number identifies the second block of PDUs relative to the first block of PDUs. Finally, the reception status for the PDUs associated with the second block of PDUs is determined, as a function of the second bitmap.
In a fourth aspect of the present invention, the above-identified and other objectives are achieved with a data packet protocol that conveys reception status, in accordance with a Selective Repeat ARQ scheme, for a number of protocol data units (PDUs) that have been transmitted from a sender to a receiver, the PDUs being grouped into a first number of fixed blocks. The protocol includes a first bitmap block number, where the first bitmap block number identifies a first block of PDUs, and a first bitmap, where the first bitmap conveys the reception status for a number of PDUs in the first block of PDUs. The protocol also includes a second bitmap block number, where the second bitmap block number identifies a second block of PDUs relative to the first block of PDUs, and a second bitmap, where the second bitmap conveys the reception status for a number of PDUs in with the second block of PDUs.